package com.xd.server.apply.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.io.Serializable;
import java.util.Date;

/**
 * 申请表(Apply)实体类
 *
 * @author xiaodi
 * @since 2021-07-10 13:36:10
 */

@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "apply")
@ApiModel(value = "com.xd.server.apply.po.ApplyPO", description = "申请表PO")
public class ApplyPO implements Serializable {
    private static final long serialVersionUID = -18821972104249412L;
    /**
     * 主键
     */
    @TableId(value = "id")
    private Long id;
    /**
     * 关联事件类型：1案件 2事件
     */
    @TableField(value = "event_type")
    private Integer eventType;

    /**
     * 关联事件id
     */
    @TableField(value = "event_id")
    private Long eventId;

    /**
     * 编号按规则生成20位
     */
    @TableField(value = "apply_number")
    private String applyNumber;

    /**
     * 填表单位id
     */
    @TableField(value = "apply_group_id")
    private String applyGroupId;

    /**
     * 填表时间
     */
    @TableField(value = "apply_time")
    private Date applyTime;

    /**
     * 承办人
     */
    @TableField(value = "user_id")
    private String userId;

    /**
     * 联系方式
     */
    @TableField(value = "phone")
    private String phone;

    /**
     * 基本情况，只能增加不能删减内容
     */
    @TableField(value = "basic_situation")
    private String basicSituation;

    /**
     * 使用资源
     */
    @TableField(value = "use_resources")
    private String useResources;

    /**
     * 使用目的
     */
    @TableField(value = "use_purpose")
    private String usePurpose;

    /**
     * 对象数
     */
    @TableField(value = "object_num")
    private Integer objectNum;

    /**
     * 目标数
     */
    @TableField(value = "target_num")
    private Integer targetNum;

    /**
     * 特定信息数
     */
    @TableField(value = "info_num")
    private Integer infoNum;

    /**
     * 手动查询起始时间
     */
    @TableField(value = "query_start_time")
    private Date queryStartTime;

    /**
     * 手动查询截至时间
     */
    @TableField(value = "query_end_time")
    private Date queryEndTime;

    /**
     * 自动监控起始时间
     */
    @TableField(value = "monitor_start_time")
    private Date monitorStartTime;

    /**
     * 自动监控截至时间
     */
    @TableField(value = "monitor_end_time")
    private Date monitorEndTime;

    /**
     * 备注
     */
    @TableField(value = "remark")
    private String remark;

    /**
     * 申请状态 1：审批中 2：已完成 3：已驳回 4：已作废 5：已回复 6：待打印
     */
    @TableField(value = "apply_state")
    private Integer applyState;

    /**
     * 关联事件名称
     */
    @TableField(value = "event_name")
    private String eventName;

    /**
     * 当前审批人id
     */
    @TableField(value = "approve_user_id")
    private String approveUserId;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 创建人Id
     */
    @TableField(value = "create_user_id")
    private String createUserId;

    /**
     * 0：未打印 1：已打印
     */
    @TableField(value = "is_print")
    private Integer isPrint;


}
